package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目文件对象 sys_project_file
 * 
 * @author zhaonz
 * @date 2023-06-02
 */
@TableName("sys_project_file")
public class ProjectFile extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 文件ID */
    @TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long fileId;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 进度ID */
    @Excel(name = "进度ID")
    private String scheduleId;

    /** 项目文件 */
    @Excel(name = "文件名称")
    private String fileName;

    /** 项目文件 */
    @Excel(name = "文件路径")
    private String filePath;

    public Long getFileId() {
        return fileId;
    }

    public ProjectFile setFileId(Long fileId) {
        this.fileId = fileId;
        return this;
    }

    public Long getProjectId() {
        return projectId;
    }

    public ProjectFile setProjectId(Long projectId) {
        this.projectId = projectId;
        return this;
    }

    public String getScheduleId() {
        return scheduleId;
    }

    public ProjectFile setScheduleId(String scheduleId) {
        this.scheduleId = scheduleId;
        return this;
    }

    public String getFileName() {
        return fileName;
    }

    public ProjectFile setFileName(String fileName) {
        this.fileName = fileName;
        return this;
    }

    public String getFilePath() {
        return filePath;
    }

    public ProjectFile setFilePath(String filePath) {
        this.filePath = filePath;
        return this;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("fileId", getFileId())
            .append("projectId", getProjectId())
            .append("scheduleId", getScheduleId())
            .append("fileName", getFileName())
            .append("filePath", getFilePath())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
